/*
	static中间件可以使客户端直接访问网站中的所有静态文件
*/

var express = require('express');
var mysql = require('mysql');
var app = express();

var pool = mysql.createPool({
	host: 'localhost',
	port: 3306,
	database: 'test',
	user : 'root',
	password: '123456'
});

/*
	如果在多个static中间件函数，指定不同的目录参考值，
	将按照代码书写顺序查找目标文件
	url中如果省略文件名，默认index.html
*/

// http://localhost:1337/   or   http://localhost:1337/index.html
// 首先查找public目录下的index.html
// 没有找到，再找根目录下的index.html
// app.use(express.static('public'));
// app.use(express.static(__dirname));




/*
	如果想让用户能够在浏览器地址栏中输入不同的路径，并且返回对应目录中的文件，
	可以在static中间件函数中使用path参数
*/
// http://localhost:1337/public/index.html   	or 	  http://localhost:1337/public/
// http://localhost:1337/     or 	http://localhost:1337/index.html
app.use('public', express.static('public'));
app.use(express.static(__dirname));



app.post('/', function(req, res){
	req.on('data', function(data){
		var obj = JSON.parse(data.toString());
		pool.getConnection(function(err, connection){
			if(err)
				res.send('与MYSQL数据库建立连接失败');
			else{
				var str;
				connection.query('insert into mytable set ?',
				{name:obj.name, sex:obj.sex},
				function(err, result){
					if(err)
						str = '在服务器端MYSQL数据库中插入数据失败。';
					else
						str = '在服务器端MYSQL数据库中插入数据成功。';
					connection.release();
					res.send(str);
				});
			}
		})
	});
});

app.listen(1337, 'localhost');